package com.bilibili.juc.tl;


import java.util.Random;
import java.util.concurrent.TimeUnit;
class House //资源类
{
    /*记录房子销售总量*/
    int saleCount = 0;
    /*卖完房子后数目加1*/
    public synchronized void saleHouse(int size)
    {
        saleCount=saleCount+size;
    }
}
/**
 * 需求1： 5个销售卖房子，集团高层只关心销售总量的准确统计数。
 */
public class ThreadLocalDemo
{
    public static void main(String[] args)
    {
        House house = new House();
        /*假设现在有5个销售在这里卖房子*/
        for (int i = 0; i < 5; i++) {
            int nameId=i;
            new Thread(()->{
                int size = new Random().nextInt(5)+1;
                System.out.println("销售"+nameId+"卖出房子的数量是:"+size);
                house.saleHouse(size);
            },"销售"+String.valueOf(nameId)).start();
        }
        /*暂停毫秒，看看几毫秒之后卖出多少套房子*/
        try {TimeUnit.MILLISECONDS.sleep(300); } catch (InterruptedException e) { e.printStackTrace(); }
        /*记录总数*/
        System.out.println(Thread.currentThread().getName()+"\t"+"共计卖出多少套： "+house.saleCount);
    }
}







































